package com.quanyan.club.pullclub.service;

import com.quanyan.api.APIResponse;
import com.quanyan.club.pullclub.entity.resp.RespHomePage;
import com.quanyan.club.pullclub.entity.resp.RespSellBusiness;
import com.quanyan.club.pullclub.entity.req.*;
import com.quanyan.common.Plugin.PageObj;

import java.util.List;
import java.util.Map;

/**
 * Created by xian-guo on 2017/2/13.
 */
public interface PullClubOneService{

    /**
     * 渠道商
     * @param reqRegisterMsg
     * @return
     */
    APIResponse channelRegister(ReqRegisterMsg reqRegisterMsg);

    /**
     * 经销商
     * @param reqRegisterMsg
     * @return
     */
    APIResponse sellRegister(ReqRegisterMsg reqRegisterMsg);

    /**
     * 退出登录
     * @param channelLoginOut
     * @return
     */
    APIResponse userLoginOut(ChannelLoginOut channelLoginOut);

    /**
     * 获取二维码
     * @param qrCodeReq
     * @return
     */
    APIResponse getZxingCode(QrCodeReq qrCodeReq);

    APIResponse PLQrCode(int uid, String url, String param, String data);

    /**
     * 普通用户
     * @param reqRegisterMsg
     * @return
     */
    APIResponse customerRegister(ReqRegisterMsg reqRegisterMsg);

    /**
     * 拉新首页数据
     * @param reqHomePage
     * @return
     */
    APIResponse<RespHomePage> homePageData(ReqHomePage reqHomePage);

    /**
     * 渠道商页面中的经销商页面
     * @param reqSellBusiness
     * @return
     */
    APIResponse<Map<String,Object>> sellBusinessPageData(ReqSellBusiness reqSellBusiness);


    /**
     * 设置渠道经销比例
     * @param reqSellBusinessRate
     * @return
     */
    APIResponse setSellBusinessRate(ReqSellBusinessRate reqSellBusinessRate);

    /**
     * 拉新人数详情页面
     * @param reqNewUserDetail
     * @return
     */
    APIResponse<Map<String,Object>> getNewUserMessageDetail(ReqNewUserDetail reqNewUserDetail);

}
